/**   
 * Copyright © 2021 eSunny Info. Tech Ltd. All rights reserved.
 * 
 * 功能描述：
 * @Package: com.yl.staff.dao 
 * @author: Bai   
 * @date: 2021年1月28日 上午10:05:18 
 */
package com.yl.staff.dao;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import com.yl.staff.model.BeanAccountingContentSalary;

/**   
* Copyright: Copyright (c) 2021 云邻信息科技
* 
* @ClassName: MapAccountingContentSalary.java
* @Description: 数据表 accounting-content-salary 操作接口
*
* @version: v1.2.0
* @author: Bai
* @date: 2021年1月28日 上午10:05:18 
*
* Modification History:<br>
* Date         Author          Version            Description
*---------------------------------------------------------*<br>
* 2021年1月28日     Bai             v1.0.0             新建 <br>
* 2021年1月30日     Bai             v1.1.0             修改所有方法的SQL注解，加入contentNumber字段 <br>
* 2021年1月30日     Bai             v1.2.0             新增删除方法 <br>
*/
/* 
 * 功能列表：
 * 	Date          Author          Method            				 Description
 *	------------------------------------------------------------------------------------------------------*<br>
 *  2021年1月28日       Bai             selectAll()                                                查看绩效工资核算内容记录<br>
 *  2021年1月28日       Bai             selectById(int id)                                         根据数据编号查找绩效工资核算内容记录 <br> 
 *  2021年1月28日       Bai             selectByStaffCode(String staffCode)                        根据员工编号查找绩效工资核算内容 <br>
 *  2021年1月28日       Bai             selectByEffectiveDate(String effectiveDate)                根据生效日期查找绩效工资核算内容 <br>
 *  2021年1月28日       Bai             selectByPerformanceContent(String performanceContent)      根据考核内容查找绩效工资核算内容<br>
 *  2021年1月28日       Bai             intsertInTo(BeanAccountingContentSalary bacs)              添加考核内容<br>
 *  2021年1月28日       Bai             updateById(BeanAccountingContentSalary bacs)               更新考核内容 <br>
 *  2021年1月30日       Bai             deleteById(int id)               							  删除考核内容<br>
 */
@Mapper
public interface MapAccountingContentSalary {
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 查找绩效工资核算内容记录
	*
	* @param:无
	* @return：List<BeanAccountingContentSalary> 绩效工资核算内容数据集合 OR []空集合
	* @throws：异常描述
	*
	* @version: v1.1.0 
	* @author: Bai
	* @date: 2021年1月29日 上午11:17:27 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                   新建 <br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`字段<br>
	 */
	@Select("SELECT `id`,`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number` FROM `accounting-content-salary` ORDER BY id DESC;")
	public List<BeanAccountingContentSalary> selectAll();
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据数据编号查找绩效工资核算内容记录
	*
	* @param: int 数据编号
	* @return：BeanAccountingContentSalary 绩效工资核算内容实体
	* @throws：异常描述
	*
	* @version: v1.1.0 
	* @author: Bai
	* @date: 2021年1月29日 上午11:24:46 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                   新建 <br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`字段<br>
	 */
	@Select("SELECT `id`,`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number` FROM `accounting-content-salary` WHERE id =#{id} ORDER BY id DESC;")
	public BeanAccountingContentSalary selectById(int id);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据员工编号查找绩效工资核算内容
	*
	* @param:String 员工编号
	* @return：List<BeanAccountingContentSalary> 绩效工资核算内容实体集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.1.0
	* @author: Bai
	* @date: 2021年1月29日 上午11:30:57 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                    新建<br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`字段<br>
	 */
	@Select("SELECT `id`,`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number` FROM `accounting-content-salary` WHERE staff_code =#{staffCode} ORDER BY id DESC;")
	public List<BeanAccountingContentSalary> selectByStaffCode(String staffCode);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据生效日期查找绩效工资核算内容
	*
	* @param:String 生效日期
	* @return：List<BeanAccountingContentSalary> 绩效工资核算内容实体集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.1.0
	* @author: Bai
	* @date: 2021年1月29日 上午11:34:14 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                    新建 <br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`字段<br>
	 */
	@Select("SELECT `id`,`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number` FROM `accounting-content-salary` WHERE effective_date =#{effectiveDate} ORDER BY id DESC;")
	public List<BeanAccountingContentSalary> selectByEffectiveDate(String effectiveDate);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据考核内容查找绩效工资核算内容
	*
	* @param:String 考核内容
	* @return：List<BeanAccountingContentSalary> 绩效工资核算内容实体集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.1.0
	* @author: Bai
	* @date: 2021年1月29日 上午11:35:18 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                   新建 <br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`字段<br>
	 */
	@Select("SELECT `id`,`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number` FROM `accounting-content-salary` WHERE performance_content =#{performanceContent} ORDER BY id DESC;")
	public List<BeanAccountingContentSalary> selectByPerformanceContent(String performanceContent);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 添加考核内容
	*
	* @param:BeanAccountingContentSalary 绩效工资核算内容实体
	* @return： boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.1.0 
	* @author: Bai
	* @date: 2021年1月29日 上午11:38:43 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                   新建 <br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`、,#{contentNumber}字段<br>
	 */
	@Insert("INSERT INTO `accounting-content-salary` (`staff_code`,`effective_date`,`performance_content`,`content_quota`,`content_number`) VALUES (#{staffCode},#{effectiveDate} ,#{performanceContent} ,#{contentQuota},#{contentNumber});")
	public boolean intsertInTo(BeanAccountingContentSalary bacs);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据数据编号更新考核内容
	*
	* @param:BeanAccountingContentSalary  绩效工资核算内容实体
	* @return：boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.1.0
	* @author: Bai
	* @date: 2021年1月29日 上午11:39:58 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月29日     Bai             v1.0.0                                   新建<br>
	* 2021年1月30日     Bai             v1.1.0                                   更新注解中sql语句，加入 ,`content_number`、,#{contentNumber}字段<br>
	 */
	@Update("UPDATE `accounting-content-salary` SET `effective_date` = #{effectiveDate},`performance_content`=#{performanceContent},`content_quota`=#{contentQuota} ,`content_number`=#{contentNumber}  WHERE `id`=#{id}")
	public boolean updateById(BeanAccountingContentSalary bacs);
	/**
	 * 
	* @Function: MapAccountingContentSalary.java
	* @Description: 根据数据编号删除数据
	*
	* @param: int 数据编号
	* @return： boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月30日 上午10:18:48 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月30日     Bai             v1.0.0                                   新建 <br>
	 */
	@Delete("DELETE FROM `accounting-content-salary` WHERE id=#{id};")
	public boolean deleteById(int id);
}
